跳到主要内容

其它测试用API

!> 不能在正式环境中使用。

通过判断base.test是否存在来区分当前是测试环境还是正式环境。

command

获取命令行

  • 返回
    • data (table) - 命令行
local commands = base.test.command()
for key, value in pairs(commands) do
-- 读取每个参数
end

message

显示消息

  • 参数
    • text (string) - 消息内容

令客户端显示文本消息。

base.test.message(text)

pause

时间停止。好比传入的player按了暂停

local player = base.player(0)
base.test.pause(player)

resume

时间恢复

It's my turn!

local player = base.player(0)
base.test.resume(player)

update

时间跳跃

Time leaping!

base.test.update()

speed

时间变速

  • 参数
    • factor (number) - 时间倍率

只有服务器会变速。

base.test.speed(2.0)

topointer

获取lua对象地址

  • 参数
    • obj - 对象
local pointer = base.test.topoint(obj)

unit

获取所有单位

  • 返回
    • unittable (table) - 单位表

单位表是一张弱表

local unittable = base.test.unit()
for id, unit in pairs(unittable) do
-- 你的代码
end

unit_coreref

单位是否被引擎引用

  • 参数
    • unit (unit) - 单位
  • 返回
    • ref (boolean) - 是否引用

如果引擎不引用这个单位,意味着这是一个 已被删除 的单位,而脚本还在引用这个单位。

local ref = base.test.unit_coreref(unit)

snapshot

获取Lua的内存快照

  • 返回
    • dump (table) - 内存快照
local dump = base.test.snapshot
for name, desc in pairs(dump) do
-- 你的代码
end